package com.gxa.weixing.core.pojo;

import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;

import javax.persistence.*;
import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;
/**
 * @Author  lirucong
 * @Date 14:54 2022/1/6
 */
@NoArgsConstructor
@AllArgsConstructor
@Data
@Table(name = "tb_balance_log")
@ApiModel(value = "提现申请记录对象")
public class BalanceLog implements Serializable {

    @Id
    @Column(name = "log_id")
    @ApiModelProperty(name = "logId", value = "编号", dataType = "Long", example = "1")
    @GeneratedValue(strategy = GenerationType.IDENTITY)
    private Long logId;

    @Column(name = "user_id")
    @ApiModelProperty(name = "userId", value = "用户编号", dataType = "Long", example = "1")
    private Long userId;

    @Column(name = "log_operation")
    @ApiModelProperty(name = "logOperation", value = "余额操作记录", dataType = "String", example = "提现金币/提现申请(成功)/提现失败")
    private String logOperation;

    @Column(name = "log_money")
    @ApiModelProperty(name = "logId", value = "操作金额", dataType = "BigDecimal", example = "20")
    private BigDecimal logMoney;

    @Column(name = "log_operation_status")
    @ApiModelProperty(name = "logOperationStatus", value = "操作状态 true增加false减少", dataType = "Boolean", example = "true")
    private Boolean logOperationStatus;

    @Column(name = "log_apply_time")
    @ApiModelProperty(name = "logApplyTime", value = "申请时间", dataType = "Date", example = "2020-10-12")
    @JsonFormat(pattern = "YYYY-MM-dd HH:mm:ss", timezone = "GMT+8")
    private Date logApplyTime;

    @Column(name = "log_order")
    @ApiModelProperty(name = "logOrder", value = "订单号", dataType = "Long", example = "12112212112212")
    private String logOrder;

    @Column(name = "log_status")
    @ApiModelProperty(name = "logStatus", value = "状态 审核中(0)/成功(1)/失败(2)", dataType = "Integer", example = "1")
    private Integer logStatus;

    @Column(name = "log_check_time")
    @ApiModelProperty(name = "logCheckTime", value = "审核时间", dataType = "Date", example = "2020-10-12")
    @JsonFormat(pattern = "YYYY-MM-dd HH:mm:ss", timezone = "GMT+8")
    private Date logCheckTime;

    @Column(name = "log_remark")
    @ApiModelProperty(name = "logRemark", value = "备注", dataType = "String", example = "你的资料存在问题，不予通过")
    private String logRemark;

    @Column(name = "balance_or_gold")
    @ApiModelProperty(name = "balanceOrGold", value = "金币操作或者余额操作", dataType = "Integer", example = "0/1")
    private Integer balanceOrGold;
}
